草庐IT

C++:malloc 等同于 new 吗?

全部标签

c - 等同于 Windows 上的 PTHREAD_MUTEX_INITIALIZER?

是否可以静态初始化CRITICAL_SECTION,如pthread_mutex_tmutex=PTHREAD_MUTEX_INITIALIZER?换句话说,是否可以在C语言中初始化库中的全局CRITICAL_SECTION而不必弄乱DllMain等? 最佳答案 是的,只需在DLL_PROCESS_ATTACH中初始化并在DLL_PROCESS_DETACH中删除CRITICAL_SECTIONg_cs={0};BOOLWINAPIDllMain(HINSTANCEhinstDLL,//handletoDLLmoduleDWORDf

windows - 如何索引 malloc 的缓冲区和输出

参见fullcodehere.我已经用fread调用填充了一个缓冲区(malloc'd)并且它是成功的。我现在正在尝试遍历缓冲区并开始解析输入。我试图通过遍历缓冲区并将每个字符输出到屏幕来开始非常简单。但是我的循环只是输出整个输入。这是代码的循环部分:movecx,0movebx,buffer.readByte:pushDWORD[ebx+1*ecx]pushDWORDecxpushDWORDcharcall_printfaddesp,12increcxcmpecx,[fsz]jge.endReadjmp.readByte读入(s1.txt)的源文件内容为:1+2;我的目标是简单地输出

c++ - 等同于 Windows 操作系统的 Mac OSX API

我刚开始迁移到MacOSX,我想移植几个我为Windows编写的工具。问题是以下内容的等价物是什么:CreateFile()CreateFileMapping()MapViewOfFile()如果有人可以引导我到一个我可以阅读它的地方,或者是否有某种针对此类常见问题/问题的快速指南,或者只是回答我的问题,我将不胜感激。对于命令行工具,选择的语言是C/C++。 最佳答案 CreateFile的等价物是open.映射文件的后两个步骤CreateFileMapping和MapViewOfFile在MacOSX上被压缩为一个步骤,带有mma

c - malloc() 并分配 : C code in run well in OS X; not in Win 8. 1

我编写的代码在OSX中没有任何问题,但在VS2013社区上运行时出现以下错误。Unhandledexceptionat0x001A3D22inMyproject.exe:0xC0000005:Accessviolationwritinglocation0x00000000.这是有问题的代码。原来的代码多了一些行,但是下面的代码自己产生了同样的错误。#includeintmain(void){int**p;p=(int**)malloc(sizeof(int*)*5000);for(inti=0;i这是发生错误时的状态。i和p为红色。namevaluetypei4118intp0x007

PowerShell 的 Windows 10 : How to make new Personalisation settings active immediately,?

我可能会更改Windows10的个性化设置,例如背景照片,通过使用RegEdit手动更改正确的注册表项或使用具有正确参数的Powershell命令“New-ItemPropery”更改正确的注册表项。我的经验:注册表中的新个性化设置——我可以使用RegEdit检查是否所有设置都已正确更改——在下次Windows重新启动或Windows用户注销+登录后才处于事件状态。顺便说一句,我正在使用免费工具“WhatChanged”来检测个性化设置中简单更改后的注册表更改。因此,目前我能够以Windows注销+登录的价格更改背景图像。但是,如果我对Windows10的图形配置工具执行相同操作,通过

windows - 如何在 Powershell 中使用 New-Item cmdlet 将 SSH 私钥写入文件?

这个问题在这里已经有了答案:PowerShell:StoreEntireTextFileContentsinVariable(5个答案)关闭5年前。我正在开发一个Powershell脚本,它从文件中读取sshkey和已知主机并将其写入另一个文件。我读了key$SshPrivateKey=Get-Content'ssh-keys\id_rsa'然后我写新文件New-Item-path$SshKeysDir-Name$SshPrivateKeyFile-Value$SshPrivateKey-ItemTypefile-force这适用于公钥。但由于某些奇怪的原因,它不适用于私钥。新文件以结

c - 由于 C 中错误的 malloc 导致程序崩溃

我的程序在这一行第二次运行时崩溃了:char*temp_directive=(char*)malloc(7);出现此错误:Criticalerrordetectedc0000374WindowshastriggeredabreakpointinMaman14.exe.Thismaybeduetoacorruptionoftheheap,whichindicatesabuginMaman14.exeoranyoftheDLLsithasloaded.ThismayalsobeduetotheuserpressingF12whileMaman14.exehasfocus.我不明白为什么,它

java - 是否有等同于 JAVA pack() 的 WIN32 API?

我的Windows应用程序需要根据子对象的可变数量/大小自动调整大小。不允许最终用户调整窗口大小。我已经知道如何移动/调整窗口大小。我只需要压缩父窗口以适合子对象的最佳方法。我可以通过多种方式计算新的大小,但如果WIN32API已经像java中那样有一个库,我就不必重新发明轮子了。谁能指出我正确的方向或确认该功能不存在?谢谢。 最佳答案 抱歉,Win32API没有这样的东西。如果您想要这样的东西,您将非常需要在API本身之上的某种库(或者,当然,您可以自己编写它)。 关于java-是否有

windows - shell32.dll : access violation during GetOpenFileName new thread

GetOpenFileName因访问冲突而失败。文件必须在桌面上并且名称很长。只有在第一次成功打开文件后才会出现问题。当鼠标光标悬停在文件上时出现问题,因为工具提示即将显示。请参阅下面的答案。我将在下面留下原始问题描述。迈克·D。=======================我正在使用GetOpenFileName。我有时会在shell32的深处遇到访问冲突。第一次使用此代码时不会发生违规,通常需要五六次尝试。此外,如果在弹出打开的文件窗口后一两秒内选择一个文件,则不会发生违规。另外,我调试时显示的调用堆栈不包含我的任何代码。就好像某个独立的线程正在醒来做某事。非常感谢任何关于我如何调

c - Malloc 是否分配了比需要的更多的内存?

这是学校的C作业,但我遇到了一些奇怪的事情,我不知道它是否正常。我必须接受命令行参数,一个例子是-ia.b所以在我的程序中,我使用malloc动态分配内存char*fileName=NULL;fileName=malloc(strlen(argv[i])*sizeof(char));//errortestingetcstrcpy(fileName,argv[i]);工作正常,但我通过visualstudio调试器查看内存,这是在内存位置分配的内存位置,对我来说,它需要的空间更大:0x01608b98"ÍÍÍÍÍýýýýB`\x1˜?`\x1\xf1¼O{º"如果我像这样转换malloc